{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 第二题：支持向量机的软间隔\n",
    "\n",
    "实验内容：\n",
    "\n",
    "1. 了解分离超平面、间隔超平面与支持向量的绘制\n",
    "2. 调整C的值，绘制分离超平面、间隔超平面和支持向量\n",
    "3. 简述引入软间隔的原因，以及C值对SVM的影响"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1. 导入模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "\n",
    "from sklearn.svm import SVC"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2. 制造数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "np.random.seed(2)\n",
    "X = np.r_[np.random.randn(20, 2) - [0, 2], np.random.randn(20, 2) + [0, 2]]\n",
    "Y = [0] * 20 + [1] * 20"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "我们把数据$X$的第一列，记为$x_1$，第二列记为$x_2$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "可视化"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def plot_data(X, Y):\n",
    "    # 新建一个 8 × 8 的图\n",
    "    plt.figure(figsize = (8, 8))\n",
    "\n",
    "    # 绘制散点图\n",
    "    plt.scatter(X[:, 0], X[:, 1], c = Y, cmap = plt.cm.Paired, edgecolors = 'k')\n",
    "\n",
    "    # 设置横纵坐标标签\n",
    "    plt.xlabel('x1')\n",
    "    plt.ylabel('x2')\n",
    "\n",
    "    # 设定图的范围\n",
    "    plt.xlim((-4, 4))\n",
    "    plt.ylim((-4, 4))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_data(X, Y)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3. 训练模型\n",
    "\n",
    "这里我们使用线性核函数，C设定为100"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "SVC(C=100, kernel='linear', random_state=32)"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 创建模型\n",
    "clf = SVC(kernel = 'linear', C = 100, random_state = 32)\n",
    "\n",
    "# 训练模型\n",
    "clf.fit(X, Y)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4. 绘制超平面"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在二维平面中，我们将SVM参数写为$w_0$和$w_1$，截距为$b$。\n",
    "\n",
    "超平面方程为：\n",
    "\n",
    "$$\n",
    "w^{\\mathrm{T}} x + b = 0\n",
    "$$\n",
    "\n",
    "写成分量形式为：\n",
    "\n",
    "$$\n",
    "w_0 x_1 + w_1 x_2 + b = 0\n",
    "$$\n",
    "\n",
    "等价于：\n",
    "\n",
    "$$\n",
    "x_2 = - \\frac{w_0}{w_1} x_1 - \\frac{b}{w_1}\n",
    "$$\n",
    "\n",
    "所以我们可以在上面的图中，绘制这个分离超平面，上图中，纵坐标为$x_2$，横坐标为$x_1$，我们可以通过SVC的coef_属性获取$w$，通过intercept_获取$b$。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "画图的时候我们可以给定任意两点，如x1等于-5和5的点，计算出这两个点的x2值，然后通过连线的方式，绘制出超平面"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "def compute_hyperplane(model, x1):\n",
    "    '''\n",
    "    计算二维平面上的分离超平面，\n",
    "    我们通过w0，w1，b以及x1计算出x2，只不过这里的x1是一个ndarray，x2也是一个ndarray\n",
    "    \n",
    "    Parameters\n",
    "    ----------\n",
    "    model: sklearn中svm的模型\n",
    "    \n",
    "    x1: numpy.ndarray，如[-5, 5]，表示超平面上这些点的横坐标\n",
    "    \n",
    "    Returns\n",
    "    ----------\n",
    "    x2: numpy.ndarray, 对应的纵坐标\n",
    "    \n",
    "    '''\n",
    "    w0 = model.coef_[0][0]\n",
    "    w1 = model.coef_[0][1]\n",
    "    b = model.intercept_[0]\n",
    "    \n",
    "    # YOUR CODE HERE\n",
    "    x2 = -1 * w0 / w1 * x1 - b / w1\n",
    "    \n",
    "    return x2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[ 2.05713424 -2.27000147]\n"
     ]
    }
   ],
   "source": [
    "# 测试样例\n",
    "x1t = np.array([-5, 5])\n",
    "x2t = compute_hyperplane(clf, x1t)\n",
    "print(x2t) # [ 2.05713424 -2.27000147]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x1ecd897c760>]"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制数据\n",
    "plot_data(X, Y)\n",
    "\n",
    "# 在横坐标上选两个点\n",
    "x1 = np.array([-5, 5])\n",
    "\n",
    "# 计算超平面上这两个点的对应纵坐标\n",
    "x2 = compute_hyperplane(clf, x1)\n",
    "\n",
    "# 绘制这两点连成的直线\n",
    "plt.plot(x1, x2, '-', color = 'red')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 5. 绘制间隔\n",
    "\n",
    "根据SVM的原理，间隔超平面的方程是：\n",
    "\n",
    "$$\n",
    "w^{\\mathrm{T}}x + b = \\pm 1\n",
    "$$\n",
    "\n",
    "我们先讨论右侧为1的情况：\n",
    "\n",
    "$$\n",
    "w^{\\mathrm{T}}x + b = 1\n",
    "$$\n",
    "\n",
    "写成分量形式：\n",
    "\n",
    "$$\n",
    "w_0 x_1 + w_1 x_2 + b = 1\n",
    "$$\n",
    "\n",
    "根据上面第四节的变换，可以得到：\n",
    "\n",
    "$$\n",
    "x2 = \\frac{1}{w_1} - \\frac{w_0}{w_1} x_1 - \\frac{b}{w_1}\n",
    "$$\n",
    "\n",
    "同理，当右侧为-1时，可得：\n",
    "\n",
    "$$\n",
    "x2 = - \\frac{1}{w_1} - \\frac{w_0}{w_1} x_1 - \\frac{b}{w_1}\n",
    "$$\n",
    "\n",
    "**可以发现，间隔超平面的方程就是在分离超平面上增加或减去$\\frac{1}{w_1}$**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "def compute_margin(model, x1):\n",
    "    '''\n",
    "    计算二维平面上的间隔超平面，\n",
    "    我们通过w0，w1，b以及x1计算出x2，只不过这里的x1是一个ndarray，x2也是一个ndarray\n",
    "    \n",
    "    Parameters\n",
    "    ----------\n",
    "    model: sklearn中svm的模型\n",
    "    \n",
    "    x1: numpy.ndarray，如[-5, 5]，表示超平面上这些点的横坐标\n",
    "    \n",
    "    Returns\n",
    "    ----------\n",
    "    x2_up: numpy.ndarray, 一条间隔超平面上对应的纵坐标\n",
    "    \n",
    "    x2_down: numpy.ndarray, 另一条间隔超平面上对应的纵坐标\n",
    "    \n",
    "    '''\n",
    "    \n",
    "    # 先调用compute_hyperplane计算超平面的纵坐标\n",
    "    x2 = compute_hyperplane(model, x1)\n",
    "    w0 = model.coef_[0][0]\n",
    "    w1 = model.coef_[0][1]\n",
    "    b = model.intercept_[0]\n",
    "    # YOUR CODE HERE\n",
    "    x2_up = 1 / w1 -  w0 / w1 * x1 - b / w1\n",
    "    # YOUR CODE HERE\n",
    "    x2_down =  -1 / w1 -  w0 / w1 * x1 - b / w1\n",
    "    \n",
    "    return x2_up, x2_down"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[ 2.43100836 -1.89612735]\n",
      "[ 1.68326012 -2.64387559]\n"
     ]
    }
   ],
   "source": [
    "# 测试样例\n",
    "x1t = np.array([-5, 5])\n",
    "x2_upt, x2_downt = compute_margin(clf, x1t)\n",
    "print(x2_upt)     # [ 2.43100836 -1.89612735]\n",
    "print(x2_downt)   # [ 1.68326012 -2.64387559]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x1ecd8a73850>]"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制数据\n",
    "plot_data(X, Y)\n",
    "\n",
    "# 在横坐标上选两个点\n",
    "x1 = np.array([-5, 5])\n",
    "\n",
    "# 计算超平面上这两个点的对应纵坐标\n",
    "x2 = compute_hyperplane(clf, x1)\n",
    "\n",
    "# 计算间隔超平面上这两个点的对应纵坐标\n",
    "x2_up, x2_down = compute_margin(clf, x1)\n",
    "\n",
    "# 绘制分离超平面和间隔超平面\n",
    "plt.plot(x1, x2, '-', color = 'red')\n",
    "plt.plot(x1, x2_up, 'k--')\n",
    "plt.plot(x1, x2_down, 'k--')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 6. 标出支持向量\n",
    "\n",
    "模型的support_vectors_属性包含了支持向量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1ecd8789640>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制数据\n",
    "plot_data(X, Y)\n",
    "\n",
    "# 在横坐标上选两个点\n",
    "x1 = np.array([-5, 5])\n",
    "\n",
    "# 计算超平面上这两个点的对应纵坐标\n",
    "x2 = compute_hyperplane(clf, x1)\n",
    "\n",
    "# 计算间隔超平面上这两个点的对应纵坐标\n",
    "x2_up, x2_down = compute_margin(clf, x1)\n",
    "\n",
    "# 绘制分离超平面和间隔超平面\n",
    "plt.plot(x1, x2, '-', color = 'red')\n",
    "plt.plot(x1, x2_up, 'k--')\n",
    "plt.plot(x1, x2_down, 'k--')\n",
    "\n",
    "# 标出支持向量\n",
    "plt.scatter(clf.support_vectors_[:, 0], clf.support_vectors_[:, 1], s = 200, facecolors = 'none', edgecolors = 'red')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 作业1：请你使用线性核，调整C的值，绘制数据集，SVM分离超平面，间隔超平面以及支持向量"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1. C = 10"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1ecd8ad3b50>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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xcWhlOLLL79k5MiR5OTkUFhYKOe130hamt7gxWrV19XPntU7x3XuXFREd//99yaW0FD429/0s8zRE+aPP/7ID4sW4F62LE89+zw9e/YsSpCffqp/GFloyJ8qh8LCQjZs2IDNZqN79+5069aNHTt2MGDAAEeL2S5dulC+fPkb30yUSsV2njn6/u93AHcgCPgF+P5mSuWL+0u2ponbcfr0aTVnzhx1/OLZ27NmzVLu7u6qR48e6pNPPlEHDhwwOEIXkJ+vbz+bMEGpJk2K9rTXq6fUyy8rtWzZbW8DuylWq77V7WaazmzZolRAgH52vBPasmWLslgsqnz58gpQnp6eql+/furovWz4I1wGd7o17bJPBW2UUpv/59pTSqm5t/Ux4w7IyFwUh507dzJnzhysVit79uwBoEGDBmzcuNFRLS9u4MiRot7xMTH6save3tCzpz5ij4jQT4krTp99preEnTtXnx3432lqux1++UWvB5g6FS71hHdSOTk5rFy5EpvNxrJly9i2bRteXl7MmjWLP/74A7PZTJs2bWRpqJST3uxC3ITDhw9js9lISEjg66+/BuCFF14gMzMTi8VCnz59kC2RN5CdrSf0S/3jL1XDt21bNB3fsqV+WMyd+uEHvR98hQowdOiVB618/bW+Je/jj6FLlzt/lkFGjRrF1KlTsdvtVKlShYiICAYMGMBDDz1kdGjCAJLMhbhNr776KgsXLiQpKQlN0wgNDWXYsGE8//zzRofm/JSCHTuKiug2bNCvBQXpid1shh499FH87bLb9Q8P8+ZdcQQqzz+vf4AoAYVlaWlpREdHY7PZiIqKol27dkRFRQEwb948QkNDqX+7J88JlyLJXIg7YLfb2b59u6OIrnv37rz33nvk5eXx6quvEh4eTrdu3fD09DQ6VOeWkqJ3oLPZ9CK6c+f0/d9duhQd53rffTe+TylWUFBAWloagYGBV+zUqF+/vqOIrlOnTpQtW9boUMVdIMlciGKklH729Y4dO+jYsSNZWVmUK1eObt26YTabeeyxx6hSpYrRYTq3/Hz9LPNL0/F79+rXGzYsmo7v0OGKBjHiz44cOYLNZsNqtbJy5Ury8vL44osvePHFF8nMzOT8+fPy72IJIslciLvkwoULrFmzBqvVitVq5eDBg6xdu5awsDD27t3L6dOnCQsLo0yZMkaH6twOHSqajl+9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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# YOUR CODE HERE\n",
    "clf = SVC(kernel = 'linear', C = 10, random_state = 32)\n",
    "clf.fit(X, Y)\n",
    "# 绘制数据\n",
    "plot_data(X, Y)\n",
    "\n",
    "# 在横坐标上选两个点\n",
    "x1 = np.array([-5, 5])\n",
    "\n",
    "# 计算超平面上这两个点的对应纵坐标\n",
    "x2 = compute_hyperplane(clf, x1)\n",
    "\n",
    "# 计算间隔超平面上这两个点的对应纵坐标\n",
    "x2_up, x2_down = compute_margin(clf, x1)\n",
    "\n",
    "# 绘制分离超平面和间隔超平面\n",
    "plt.plot(x1, x2, '-', color = 'red')\n",
    "plt.plot(x1, x2_up, 'k--')\n",
    "plt.plot(x1, x2_down, 'k--')\n",
    "\n",
    "# 标出支持向量\n",
    "plt.scatter(clf.support_vectors_[:, 0], clf.support_vectors_[:, 1], s = 200, facecolors = 'none', edgecolors = 'red')\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2. C = 1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1ecd4d8fe80>"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# YOUR CODE HERE\n",
    "clf = SVC(kernel = 'linear', C = 1, random_state = 32)\n",
    "clf.fit(X, Y)\n",
    "# 绘制数据\n",
    "plot_data(X, Y)\n",
    "\n",
    "# 在横坐标上选两个点\n",
    "x1 = np.array([-5, 5])\n",
    "\n",
    "# 计算超平面上这两个点的对应纵坐标\n",
    "x2 = compute_hyperplane(clf, x1)\n",
    "\n",
    "# 计算间隔超平面上这两个点的对应纵坐标\n",
    "x2_up, x2_down = compute_margin(clf, x1)\n",
    "\n",
    "# 绘制分离超平面和间隔超平面\n",
    "plt.plot(x1, x2, '-', color = 'red')\n",
    "plt.plot(x1, x2_up, 'k--')\n",
    "plt.plot(x1, x2_down, 'k--')\n",
    "\n",
    "# 标出支持向量\n",
    "plt.scatter(clf.support_vectors_[:, 0], clf.support_vectors_[:, 1], s = 200, facecolors = 'none', edgecolors = 'red')\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3. C = 0.1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1ecd889cd30>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# YOUR CODE HERE\n",
    "# YOUR CODE HERE\n",
    "clf = SVC(kernel = 'linear', C = 0.1, random_state = 32)\n",
    "clf.fit(X, Y)\n",
    "# 绘制数据\n",
    "plot_data(X, Y)\n",
    "\n",
    "# 在横坐标上选两个点\n",
    "x1 = np.array([-5, 5])\n",
    "\n",
    "# 计算超平面上这两个点的对应纵坐标\n",
    "x2 = compute_hyperplane(clf, x1)\n",
    "\n",
    "# 计算间隔超平面上这两个点的对应纵坐标\n",
    "x2_up, x2_down = compute_margin(clf, x1)\n",
    "\n",
    "# 绘制分离超平面和间隔超平面\n",
    "plt.plot(x1, x2, '-', color = 'red')\n",
    "plt.plot(x1, x2_up, 'k--')\n",
    "plt.plot(x1, x2_down, 'k--')\n",
    "\n",
    "# 标出支持向量\n",
    "plt.scatter(clf.support_vectors_[:, 0], clf.support_vectors_[:, 1], s = 200, facecolors = 'none', edgecolors = 'red')\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 作业2：简述为什么要加入软间隔？C的值对SVM有什么影响？"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "###### 现实中很难确定合适的核函数使得训练样本在特征空间中可分，即使找到某个核函数使其线性可分，也难断定是否是由过拟合造成的。引入软间隔可以允许支持向量机在一些样本上不满足约束/出错。\n",
    "###### C值越小其容错范围越大"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
